package com.lagou.ipersistence.reflection.invoker;

import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;

/**
 * 一个为类中没有getter方法的字段获取该字段值得类
 * 一个类里面如果有某个参数但是没有getter方法, 则可以用这个类来获取
 *
 * @author Yan Jiahong
 * Created on 2020/11/17
 */
public class GetFieldInvoker implements Invoker{
    private final Field field;

    public GetFieldInvoker(Field field) {
        this.field = field;
    }

    @Override
    public Object invoke(Object target, Object[] args) throws IllegalAccessException, InvocationTargetException {
        return field.get(target);
    }

    @Override
    public Class<?> getType() {
        return null;
    }
}
